package com.ruoyi.business.service;

import java.util.List;

import com.ruoyi.business.domain.AcLeaseInfo;
import com.ruoyi.business.domain.AcPayfeesInfo;

/**
 * 租金缴费统计Service接口
 *
 * @author ruoyi
 * @date 2025-02-20
 */
public interface IAcPayfeesInfoService
{
    /**
     * 查询租金缴费统计
     *
     * @param payfId 租金缴费统计主键
     * @return 租金缴费统计
     */
    public AcPayfeesInfo selectAcPayfeesInfoByPayfId(Long payfId);

    /**
     * 查询租金缴费统计列表
     *
     * @param acPayfeesInfo 租金缴费统计
     * @return 租金缴费统计集合
     */
    public List<AcPayfeesInfo> selectAcPayfeesInfoList(AcPayfeesInfo acPayfeesInfo);

    public List<AcPayfeesInfo> selectAcPayfeesInfoSeasonList(AcPayfeesInfo acPayfeesInfo);
    public List<AcPayfeesInfo> selectAcPayfeesInfoMonthList(AcPayfeesInfo acPayfeesInfo);


    /**
     * 新增租金缴费统计
     *
     * @param acPayfeesInfo 租金缴费统计
     * @return 结果
     */
    public int insertAcPayfeesInfo(AcPayfeesInfo acPayfeesInfo);

    /**
     * 修改租金缴费统计
     *
     * @param acPayfeesInfo 租金缴费统计
     * @return 结果
     */
    public int updateAcPayfeesInfo(AcPayfeesInfo acPayfeesInfo);

    /**
     * 批量删除租金缴费统计
     *
     * @param payfIds 需要删除的租金缴费统计主键集合
     * @return 结果
     */
    public int deleteAcPayfeesInfoByPayfIds(Long[] payfIds);

    /**
     * 删除租金缴费统计信息
     *
     * @param payfId 租金缴费统计主键
     * @return 结果
     */
    public int deleteAcPayfeesInfoByPayfId(Long payfId);

    List<AcPayfeesInfo> selectRentIncome();

    List<AcPayfeesInfo>  selectRentTimeliness();

    List<AcPayfeesInfo>  selectRentIncomeProportion();

    List<AcPayfeesInfo>  selectRentDelayTime();

    List<AcPayfeesInfo>  selectRentIncomeExpenditure();

    List<AcPayfeesInfo>  selectRentDeposit();
}
